package com.weijian.service;

import com.fasterxml.jackson.databind.exc.InvalidFormatException;
import com.weijian.common.pojo.CommonResult;
import com.weijian.dal.vo.OrderReportVO;
import com.weijian.dal.vo.SalesTop10ReportVO;
import com.weijian.dal.vo.TurnoverReportVO;
import com.weijian.dal.vo.UserReportVO;
import jakarta.servlet.http.HttpServletResponse;

import java.io.IOException;
import java.time.LocalDate;

public interface ReportService {

    CommonResult<TurnoverReportVO> getTurnoverStatistics(LocalDate begin, LocalDate end);

    CommonResult<UserReportVO> userStatistics(LocalDate begin, LocalDate end);

    CommonResult<OrderReportVO> orderStatistics(LocalDate begin, LocalDate end);

    CommonResult<SalesTop10ReportVO> salesTop10Report(LocalDate begin, LocalDate end);

    void export(HttpServletResponse httpResponse) throws IOException, InvalidFormatException;
}
